home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / docs / devel / tcl / tclx7_31.z / tclx7_31 / tcldev / tclX7.3a-p1 / README < prev   
Encoding:
Text File  |  1994-01-15  |  8.2 KB  |  234 lines

  1.  
  2.                   *** README file for Extended Tcl 7.3a ***
  3.  
  4. EXTENDED TCL
  5. ============
  6.  
  7.     Extended Tcl (TclX), is a set of extensions to Tcl 7.3, the Tool
  8. Command Language invented by Dr. John Ousterhout of the University
  9. of California at Berkeley.  Tcl is a powerful, yet simple embeddable
  10. programming language.  Extended Tcl is oriented towards Unix system
  11. programming tasks, with many additional interfaces to the Unix
  12. operating system, It is upwardly compatible with Tcl 7.3.  You take
  13. the Extended Tcl package, add it to Tcl 7.3, and from that you get
  14. Extended Tcl.  (Berkeley Tcl is not included in this distribution,
  15. obtain it from ftp.cs.berkeley.edu).
  16.  
  17.    Support is also included for building a Tk 3.6 wish shell (wishx)
  18. with the Extended Tcl command set.
  19.  
  20.    While this TclX distribution is tested with Tcl 7.3 and Tk 3.6, it will
  21. probably work with new versions of Tcl & Tk with little or no changes.
  22.  
  23.    Extended Tcl was designed and implemented by Karl Lehenbauer
  24. (karl@NeoSoft.com) and Mark Diekhans (markd@Grizzly.com), with help
  25. in the early stages from Peter da Silva (peter@NeoSoft.com).
  26.  
  27.    As with Berkeley Tcl, all of Extended Tcl is freely
  28. redistributable, including for commercial use and resale.
  29.  
  30.    Please read the file INSTALL carefully before building and
  31. installing Extended Tcl.
  32.  
  33.  
  34. FEATURES ADDED BY EXTENDED TCL
  35. ==============================
  36.  
  37.    Here is a summary of the features added by Extended Tcl.  For
  38. more details on the commands and functionality provided by Extended
  39. Tcl, see the manual page man/TclX.man.
  40.  
  41.     o A shell, which provides an environment for developing and
  42.       executing Tcl programs.
  43.  
  44.     o Advanced Tcl code library facility that is compatible with
  45.       standard Tcl auto-loading.
  46.  
  47.     o General purpose commands which define new programming
  48.       constructs,  debugging and profiling facilities.
  49.  
  50.     o Unix access commands provide access to many Unix system calls,
  51.       including process management.
  52.  
  53.     o File I/O commands provide added facilities for accessing and
  54.       manipulating open files.
  55.  
  56.     o File scanning facility that provides awk-like functionality.
  57.  
  58.     o Extended list manipulation commands.
  59.  
  60.     o Keyed lists, a type of list that provides functionality
  61.       similar to C structures.
  62.  
  63.     o Extended string and character manipulation commands.
  64.  
  65.     o Time and date manipulation and conversion commands.
  66.  
  67.     o A simple command for accessing TCP/IP based servers.
  68.  
  69.     o X/PG based internationalization commands.
  70.  
  71. ON-LINE HELP
  72. ============
  73.  
  74.     There is a help system included with Extended Tcl.  It contains
  75. some documentation on every command in Berkeley Tcl, Extended Tcl
  76. and Tk.  You can invoke it interactively from within Extended Tcl by
  77. typing "help".
  78.  
  79.     Once you bring Tcl up and have gotten it to pass all the tests,
  80. try typing "help help" to learn how to use help.
  81.  
  82.     There is also a Tk based help program "tclhelp".
  83.  
  84. MANUAL PAGES
  85. ============
  86.  
  87.     Man pages in nroff/troff format are provided for all of Tcl and
  88. the extensions in the directory tclX7.3a*/man.  Start with the
  89. TclX.man manual.
  90.  
  91. EXTENDED TCL VERSION NAMING
  92. ===========================
  93.  
  94.     Extended Tcl takes its version number from the corresponding
  95. version of Berkeley (Ousterhout) Tcl upon which it is based, with
  96. the addition of a trailing letter in case there are multiple
  97. releases of Extended Tcl within a single release of Berkeley Tcl.
  98. This release is TclX 7.3a.
  99.  
  100. INTERFACING TCL AND C++
  101. =======================
  102.  
  103. C++ programmers can include the file "tcl++.h" to define C++ classes
  104. that can be used to access a Tcl interpreter.  This is based on Tcl
  105. C++ classes originally developed by Parag Patel.  The files
  106.  
  107.         src/tclXmain.c
  108. and
  109.         tksrc/tkXmain.c
  110.  
  111. will compile under both C and C++.  If your have a C++ compiler that
  112. requires the main to be compiled with C++ (g++ does not have this
  113. restriction), use these files renamed to have the correct suffix for
  114. C++ (usually .C).
  115.  
  116. PACKAGE LIBRARIES
  117. =================
  118.  
  119.     Package Libraries are a Tcl source code management tool included
  120. in this release.  Package libraries allow you to group Tcl
  121. procedures into logical bundles and create single files, libraries,
  122. that contain multiple packages.  The package code provides a
  123. low-overhead means of automatically demand-loading a package on the
  124. first attempt to execute one of the procedures defined within it.
  125. As such, package libraries provide a mechanism to accommodate the
  126. creation of Tcl applications and libraries of a substantial size.
  127. The TclX library mechanism is a super-set of the mechanism provided
  128. with standard Tcl.
  129.  
  130. LINKING TCL APPLICATIONS
  131. ========================
  132.  
  133.    To build a TclX based application containing C code, start with
  134. either:
  135.  
  136.         tclmaster/src/tclXAppInit.c for just TclX
  137. or
  138.         tkmaster/src/tkXAppInit.c for TclX & Tk
  139.  
  140. and add your application initialization.  There are comments in the
  141. code to guide you. The "main" object file is already in the
  142. libraries, all you have to do is link a customized tclXAppInit.o or
  143. tkXAppInit.o file with your application and the Tcl libraries.  For
  144. example:
  145.  
  146.   cc tclXAppInit.o mystuff.a libtclx.a libtcl.a ${SYSLIBS} -o myapp
  147.  
  148.   cc tkXAppInit.o mystuff.a libtkx.a libtk.a libtclx.a libtcl.a ${SYSLIBS} \
  149.      -o myapp
  150.  
  151. Each of those directories has a file SYSLIBS that contains the
  152. system libraries that the TclX configure script thinks you should
  153. use for linking programs. These file are in a format that can be included
  154. from a make file.
  155.  
  156. IMPORTANT NOTE:  libtclx.a must be specified on the link command line
  157. before libtcl.a.  If the order is reversed, incorrect command line
  158. parsing code will be used.
  159.  
  160. SUPPORT FOR EXTENDED TCL
  161. ========================
  162.  
  163.     We are committed to providing continuing support for Extended
  164. Tcl.  Please send questions, bug reports, and bug fixes to:
  165.  
  166.          tcl-project@NeoSoft.com
  167.  
  168. COMPATIBILITY WITH TclX 6.5c
  169. ============================
  170.  
  171.    We have attempted to main backwards-compatibility with older
  172. versions of TclX.  A few changes were made to enhance usability or
  173. fix problems that have introduced a few incompatibilities, these are
  174. listed below.  Remember that multiple versions of Tcl may be
  175. installed on a system using the Tcl default file, so you don't have
  176. to convert everything at once.  See the CHANGES file for full
  177. details.  These are the major incompatible changes:
  178.  
  179.    o TclX auto loading has been made compatible with standard Tcl.
  180.      The path is now found in the "auto_path" variable instead of
  181.      "TCLPATH".  The "demand_load" function has been renamed
  182.      "auto_load" and "load" has been renamed "auto_load_file".
  183.       The "autoload" procedure no longer exists.
  184.    o The variable programName was changed to argv0 for compatibility
  185.      with Tcl.
  186.    o Removed outdated execvp proc, use execl directly.
  187.    o Removed "flush" option on "cmdtrace".  Output lines are now
  188.      flushed after  each command is traced.
  189.    o Changed "signal trap" to edit the command, replacing %S with
  190.      the signal name rather than storing in the global variable
  191.      "signalReceived".  This fixes bugs with signals received in
  192.      a signal handler.
  193.  
  194. WHERE TO GET IT
  195. ===============
  196.  
  197. Tcl & Tk is available via anonymous ftp from:
  198.  
  199.    ftp.cs.berkeley.edu:/ucb/tcl/[tcl7.3.tar.Z tk3.6.tar.Z]
  200. or
  201.    ftp.neosoft.com:/pub/tcl/distrib/[tcl7.3.tar.gz tk3.6.tar.gz]
  202. or
  203.    ftp.uu.net:languages/tcl/[tcl7.3.tar.Z tk3.6.tar.Z]
  204.  
  205. Extended Tcl 7.3a can be downloaded by anonymous FTP from:
  206.  
  207.    ftp.neosoft.com:/pub/tcl/distrib/tclX7.3a.tar.gz
  208. or
  209.    harbor.ecn.purdue.edu:tcl/extensions/tclX7.3a.tar.Z
  210.  
  211. A contributed sources archive resides on harbor.ecn.purdue.edu and
  212. is mirrored on ftp.ibp.fr for our friends in Europe.  An Frequently
  213. Asked Questions (FAQ) document exists in this archive.
  214.  
  215. Remember to mail Extended Tcl problems and questions to
  216. tcl-project@NeoSoft.com not Dr. John Ousterhout.
  217.  
  218. THANKS
  219. ======
  220.  
  221.   A big thanks to all of the Extended Tcl users from all over the world
  222. who have helped us debug problems and given us valuable suggestions.
  223. A special thanks to John Ousterhout for Tcl, Tk and all the support he
  224. has given us.
  225.  
  226.  
  227. NEOSOFT TCL CONSULTING
  228. ======================
  229.  
  230.   NeoSoft, co-developers of Extended Tcl, provides commercial Tcl
  231. releases, support, training and consulting.  NeoSoft can be reached 
  232. by sending electronic mail to info@NeoSoft.com or by phoning 
  233. +1 713 684 5969.
  234.